﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace V82.ОбщиеМодули
{
	public partial class ФайловыеФункцииКлиентСервер
	{
		// Извлечь текст из файла и возвратить его в виде строки
		//

		public object ИзвлечьТекст(/*ПолноеИмяФайла, Отказ = Ложь*/)
		{
			//ИзвлеченныйТекст = "";
			return null;
		}
		// Извлечь текст из файла и поместить во временное хранилище
		//

		public object ИзвлечьТекстВоВременноеХранилище(/*ПолноеИмяФайла, УникальныйИдентификатор = "", Отказ = Ложь*/)
		{
			//АдресВременногоХранилища = "";
			//Отказ = Ложь;
			//Текст = ИзвлечьТекст(ПолноеИмяФайла, Отказ);
			if(true/*ПустаяСтрока(Текст)*/)
			{
			}
			//ИмяВременногоФайла = ПолучитьИмяВременногоФайла();
			//ТекстовыйФайл = Новый ЗаписьТекста(ИмяВременногоФайла, КодировкаТекста.UTF8);
			//ТекстовыйФайл.Записать(Текст);
			//ТекстовыйФайл.Закрыть();
			//ПоместитьФайл(АдресВременногоХранилища, ИмяВременногоФайла, , Ложь, УникальныйИдентификатор);
			//УдалитьФайлы(ИмяВременногоФайла);
			return null;
		}
		// Получить уникальное имя файла в рабочем каталоге - если есть совпадения - будет имя типа A1\Приказ.doc
		//

		public object ПолучитьУникальноеИмяСПутем(/*ИмяКаталога, ИмяФайла*/)
		{
			//РезультирующийПуть = "";
			//Счетчик = 0;
			//ЦиклНомер = 0;
			//Успешно = Ложь;
			//ГенераторСлучая = Неопределено;
			//ГенераторСлучая = Новый ГенераторСлучайныхЧисел(Секунда(ТекущаяДата()));
			while(true/*НЕ Успешно И ЦиклНомер < 100*/)
			{
				//НомерКаталога = 0;
				//НомерКаталога = ГенераторСлучая.СлучайноеЧисло(0, 25);
				//НомерКаталога = Секунда(ТекущаяДата()) % 26;
				//КодБукваA = КодСимвола("A", 1);
				//КодКаталога = КодБукваA + НомерКаталога;
				//БукваКаталога = Символ(КодКаталога);
				//ПодКаталог = "";
				/*// Частичный путь
*/
				/*// По умолчанию вначале будет класть в корень, а уже потом, 
*/
				/*//  если не сможет, то в A, B, ... Z,  A1, B1, .. Z1, ..  A2, B2 и т.д.
*/
				if(true/*Счетчик = 0*/)
				{
					//ПодКаталог = "";
				}
				//ПолныйПодКаталог = ИмяКаталога + ПодКаталог;
				/*// Создать каталог для файлов
*/
				//КаталогНаДиске = Новый Файл(ПолныйПодКаталог);
				if(true/*НЕ КаталогНаДиске.Существует()*/)
				{
					//СоздатьКаталог(ПолныйПодКаталог);
				}
				//ФайлПопытки = ПолныйПодКаталог + ИмяФайла;
				//Счетчик = Счетчик + 1;
				/*// Проверить, есть ли файл с таким именем
*/
				//ФайлНаДиске = Новый Файл(ФайлПопытки);
				if(true/*НЕ ФайлНаДиске.Существует()*/)
				{
					/*// нет такого файла
*/
					//РезультирующийПуть = ПодКаталог + ИмяФайла;
					//Успешно = Истина;
				}
			}
			return null;
		}
		//// Функция предназначена для преобразования расширения файла в следующий вид: без точки и в нижнем регистре
		//// Параметры:
		////  СтрРасширение - Строка. Расширение для преобразования
		//// Возвращаемое значение:
		////  Преобразованная Строка

		public object РасширениеБезТочки(/*СтрРасширение*/)
		{
			//Расширение = НРег(СокрЛП(СтрРасширение));
			if(true/*Сред(Расширение, 1, 1) = "."*/)
			{
				//Расширение = Сред(Расширение, 2);
			}
			return null;
		}
		// РасширениеБезТочки()
		// Функция раскладывает строку в массив строк, используя "./\" как разделитель
		//

		public object РазложитьСтрокуПоТочкамИСлэшам(/*Знач Представление*/)
		{
			//Фрагменты = Новый Массив;
			//НачальнаяПозиция = 1;
			if(true/*НачальнаяПозиция <> ТекущаяПозиция*/)
			{
				//ТекущийФрагмент = Сред(Представление, НачальнаяПозиция, ТекущаяПозиция - НачальнаяПозиция);
				//Фрагменты.Добавить(ТекущийФрагмент);
			}
			return null;
		}
		//// Получается индекс пиктограммы файла - индекс в картинке ПиктограммыФайлов
		////

		public object ПолучитьИндексПиктограммыФайла(/*Знач РасширениеФайлаТолькоТекст*/)
		{
			if(true/*РасширениеФайлаТолькоТекст = Неопределено*/)
			{
			}
			//РасширениеФайлаБезТочки = РасширениеФайлаТолькоТекст;
			if(true/*Лев(РасширениеФайлаБезТочки, 1) = "."*/)
			{
				//РасширениеФайлаБезТочки = Сред(РасширениеФайлаБезТочки, 2);
			}
			//Расширение = "." + НРег(РасширениеФайлаБезТочки) + ";";
			if(true/*Найти(".dt;.1cd;.cf;.cfu;",Расширение) <> 0*/)
			{
				/*//Файлы 1С
*/
			}
			return null;
		}
		// ()
		// Возвращает Строку сообщения о недопустимости подписания занятого файла
		//

		public object СтрокаСообщенияОНедопустимостиПодписанияЗанятогоФайла(/*ФайлСсылка = Неопределено*/)
		{
			if(true/*ФайлСсылка = Неопределено*/)
			{
				//Возврат НСтр("ru = 'Нельзя подписать занятый файл.'");
			}
			return null;
		}
		// Возвращает Строку сообщения о недопустимости подписания зашифрованного файла
		//

		public object СтрокаСообщенияОНедопустимостиПодписанияЗашифрованногоФайла(/*ФайлСсылка = Неопределено*/)
		{
			if(true/*ФайлСсылка = Неопределено*/)
			{
				//Возврат НСтр("ru = 'Нельзя подписать зашифрованный файл.'");
			}
			return null;
		}
		// Получает символ слэша "\" или "/"

		public object ПолучитьСлеш(/*ТипПлатформыТекущий*/)
		{
			if(true/*ТипПлатформыТекущий = ТипПлатформы.Windows_x86 ИЛИ ТипПлатформыТекущий = ТипПлатформы.Windows_x86_64*/)
			{
			}
			return null;
		}
	}
}
